Tetration
Tetration is a binary mathematical operator ^ba defined by the recurrence relation: : ^0a = 1 : ^{b + 1}a = a^{^ba} More intuitively, ^ba = a^{a^{a^{.^{.^{.^{a^a}}}}}} with b'' copies of ''a. ^ba is pronounced "a'' tetrated to ''b" or "to-the-''b'' a''." Tetration leads to very large numbers, even with small inputs. For example, ^43 = 3^{3^{3^3}} = 3^{3^{27}} = 3^{7625597484987} , which has 3638334640025 digits. Generalizing The problem with the above definition is that ^ba works only for nonnegative integers ''b. What is ^\pi 2 , for example? Generalizing b'' to the real numbers is a tricky and interesting problem. We present a solution proposed by Daniel Geisler of http://tetration.org/. Heavy differential calculus is ahead, so be warned. This is intended to be a gentle introduction; visit the original page if you don't need a tutorial. Tetration is part of a class of general problems involving ''function iteration. Function iteration f^t(z) is defined by the recurrence relation f^0(z) = z , f^{t + 1}(z) = f(f^t(z)) , so f^2(z) = f(f(z)) , f^3(z) = f(f(f(z))) , etc. Tetration could be defined as ^ba = f^b(1) where f(z) = a^z . So if we can define f^t(z) for real t , we're all set for defining continuous tetration. First, we translate f'' so that f(0) = 0 . This simplifies a lot of the math. Then we consider the Maclaurin series (Taylor series around 0) of f^t : : \sum_{i = 0}^\infty D^if^t(0)z^n/n! = f^t(0) + Df^t(0)z + \frac{D^2f^t(0)z^2}{2!} + \frac{D^3f^t(0)z^3}{3!} + \ldots This converges to f^t(z) for 0 \leq |z| < R for some radius R . What we need to do is find f^t(0),\,Df^t(0),\,D^2f^t(0),\,D^3f^t(0),\,Df^t(0)\ldots . Constant term First, f^t(0) = 0 because f(0) = 0 . First derivative To compute Df^t(0) , we need to find Df^t(z) . Define g(z) = f^{t - 1}(z) for convenience: : Df^t(z) = Df(g(z)) = f'(g(z))g'(z) (Chain Rule) : = f'(f^{t - 1}(z))Df(f^{t - 2}(z)) = f'(f^{t - 1}(z))f'(f^{t - 2}(z))Df^{t - 3}(z) : = f'(f^{t - 1}(z)) \cdot f'(f^{t - 2}(z)) \cdots f'(f(z)) \cdot f'(z) : = \prod_{i = 0}^{t - 1} f'(f^i(z)) Plugging in z = 0 , we can take advantage of the fact that f(0) = 0 : : = \prod_{i = 0}^{t - 1} f'(f^i(0)) = \prod_{i = 0}^{t - 1} f'(0) = f'(0)^t Since we'll see them a lot, we'll define \lambda_1 = f'(0) , \lambda_2 = f(0) , etc. So we can write our latest finding as Df^t(0) = \lambda_1^t . Second derivative This one is somewhat nastier. Again define g(z) = f^{t - 1}(z) : : D^2f^t(z) = D^2f(g(z)) = Df'(g(z))g'(z) (Chain Rule) : = f''(g(z))g'(z)^2 + f'(g(z))g''(z) (Product Rule) : = f''(f^{t - 1}(z))Df^{t - 1}(z)^2 + f'(f^{t - 1}(z))D^2f^{t - 1}(z) (Product Rule) : = f''(f^{t - 1}(z))(\lambda_1^{t - 1})^2 + f'(f^{t - 1}(z))D^2f^{t - 1}(z) Setting z = 0 : : = \lambda_2\lambda_1^{2t - 2} + \lambda_1D^2f^{t - 1}(0) : = \lambda_2\lambda_1^{2t - 2} + \lambda_1(\lambda_2\lambda_1^{2(t - 1) - 2} + \lambda_1D^2f^{t - 2}(0)) : = \lambda_2\lambda_1^{2t - 2} + \lambda_1\lambda_2\lambda_1^{2t - 4} + \lambda_1^2\lambda_2\lambda_1^{2t - 6} + \ldots + \lambda_1^{t - 1}\lambda_2\lambda_1^0 : = \lambda_2 \sum_{i = 0}^{t - 1} \lambda_1^{2t - i - 2} Third derivative : D^3f^t(z) = D^3f(g(z)) = D+ f'(g(z))g''(z) (Chain Rule + Product Rule) : = Df''(g(z))g'(z)^2 + Df'(g(z))g''(z) : = f'(g(z))g'(z)^3 + f(g(z))2g''(z)g'(z) + f''(g(z))g''(z)g'(z) + f'(g(z))g'(z) (Product Rule, 2x) : = f'(g(z))g'(z)^3 + 3f''(g(z))g''(z)g'(z) + f'(g(z))g'''(z) (combining like terms) External links *http://en.citizendium.org/wiki/Tetration *Knuth's up-arrow notation Category:Operations